package org.game.module.buildingbo;

import com.sojoys.artifact.exception.AbstractLogicModelException;
import com.sojoys.artifact.factory.session.ISession;
import com.sojoys.artifact.core.IModule;
/** 
 * 建筑
 */
public interface BuildingBO extends IModule {
	byte classCode = 8;
	
	/** 获取建筑信息 [code = 2049] */
	short getBuildingInfo = 2049; 
	/** 进入城市 [code = 2050] */
	short enterCity = 2050; 
	/** 解锁建筑 [code = 2051] */
	short unlockBuilding = 2051; 
	/** 升级 [code = 2052] */
	short upgrade = 2052; 
	/** 打工 [code = 2053] */
	short work = 2053; 
	/** 领薪水 [code = 2054] */
	short getWorkReward = 2054; 
	/** 更新建筑 [code = 2058] */
	short updateBuilding = 2058; // 推送类型
	/** 触发打工事件 [code = 2059] */
	short triggerWorkEvent = 2059; // 推送类型
	/** 升级完成反馈 [code = 2060] */
	short upgradeFul = 2060; 
	/** 获取抓娃娃信息 [code = 2062] */
	short reqGetGashaponInfo = 2062; 
	/** 开始抓娃娃 [code = 2063] */
	short reqStartGashapon = 2063; 
	/** 请求抓娃娃结果验证 [code = 2064] */
	short reqCheckGashaponResult = 2064; 
	/** 请求刷新娃娃蛋池 [code = 2065] */
	short reqRefreshGashaponPool = 2065; 
	
	
	/** 获取建筑信息 [code = 2049] */
	byte[] getBuildingInfo(ISession session, org.game.protobuf.c2s.C2SBuildingMsg.GetAllUnlockBuildingMsg msg) throws AbstractLogicModelException;
	
	/** 进入城市 [code = 2050] */
	byte[] enterCity(ISession session, org.game.protobuf.c2s.C2SBuildingMsg.EnterCity enterCity) throws AbstractLogicModelException;
	
	/** 解锁建筑 [code = 2051] */
	byte[] unlockBuilding(ISession session, org.game.protobuf.c2s.C2SBuildingMsg.UnlockBuildingMsg unlockBuilding) throws AbstractLogicModelException;
	
	/** 升级 [code = 2052] */
	byte[] upgrade(ISession session, org.game.protobuf.c2s.C2SBuildingMsg.BuildingUpgradeMsg upgrade) throws AbstractLogicModelException;
	
	/** 打工 [code = 2053] */
	byte[] work(ISession session, org.game.protobuf.c2s.C2SBuildingMsg.WorkMsg work) throws AbstractLogicModelException;
	
	/** 领薪水 [code = 2054] */
	byte[] getWorkReward(ISession session, org.game.protobuf.c2s.C2SBuildingMsg.GetWorkRewardMsg getWorkReward) throws AbstractLogicModelException;
	
	
	
	/** 升级完成反馈 [code = 2060] */
	byte[] upgradeFul(ISession session, org.game.protobuf.c2s.C2SBuildingMsg.ReqUpgradeFul req) throws AbstractLogicModelException;
	
	/** 获取抓娃娃信息 [code = 2062] */
	byte[] reqGetGashaponInfo(ISession session, org.game.protobuf.c2s.C2SBuildingMsg.ReqGetGashaponInfo req) throws AbstractLogicModelException;
	
	/** 开始抓娃娃 [code = 2063] */
	byte[] reqStartGashapon(ISession session, org.game.protobuf.c2s.C2SBuildingMsg.ReqStartGashapon req) throws AbstractLogicModelException;
	
	/** 请求抓娃娃结果验证 [code = 2064] */
	byte[] reqCheckGashaponResult(ISession session, org.game.protobuf.c2s.C2SBuildingMsg.ReqCheckGashaponResult req) throws AbstractLogicModelException;
	
	/** 请求刷新娃娃蛋池 [code = 2065] */
	byte[] reqRefreshGashaponPool(ISession session, org.game.protobuf.c2s.C2SBuildingMsg.ReqRefreshGashaponPool req) throws AbstractLogicModelException;
	
}